#ifndef prs_FrmStyle_H
#define prs_FrmStyle_H

#include "prs_FrmValue.h"
                        
namespace prs {

///////////////////////////////////////////////////////////////////////////////

struct TNodeStyle : public TNodeFrm
{
  DECLARE_ClientNode()
  //
  TAttrNodeType<nodeType_Style> NodeType;
  TAttrId Id;
  TAttrPointer<attrName_ParentStyle,TNodeStyle*> ParentStyle;
  //
  TNodeStyle() : NodeType(this),Id(this),ParentStyle(this) {}
  //
  TNodeStyleControl *SearchStyleControlByType(svl::TString NodeControlType);
  static TNodeStyle *searchStyleByIdFromChild(TAttrNode *FromChild,const svl::TString &StyleId);
  
private:
  svl_Except;
};

///////////////////////////////////////////////////////////////////////////////

struct TFrmStyleValue : public TFrmPointerValue<TNodeStyle*>
{
  DECLARE_ClientNodeEx(nodeType_TFrmStyleValue)
};

///////////////////////////////////////////////////////////////////////////////
}

#endif
